package system

import (
	"github.com/gogf/gf/v2/frame/g"
	"github.com/sagoo-cloud/sagooiot/api/v1/common"
)

// GetSysOauthUserListReq 获取数据列表
type GetSysOauthUserListReq struct {
	g.Meta `path:"/sys_oauth_user/list" method:"get" summary:"获取单点登录列表" tags:"单点登录"`
	common.PaginationReq
}
type GetSysOauthUserListRes struct {
	Data []GetSysOauthUserByIdRes
	common.PaginationRes
}

// GetSysOauthUserByIdReq 获取指定ID的数据
type GetSysOauthUserByIdReq struct {
	g.Meta `path:"/sys_oauth_user/get" method:"get" summary:"获取单点登录" tags:"单点登录"`
	Id     int `json:"id"        description:"id" v:"required#id不能为空"`
}
type GetSysOauthUserByIdRes struct {
	CreatedAt string `json:"createdAt"          description:""`
	UpdatedAt string `json:"updatedAt"          description:""`
	Name      string `json:"name"          description:"用户名称"`
	Openid    string `json:"openid"          description:"应用id"`
	AvatarUrl string `json:"avatarUrl"          description:"用户头像"`
	Unionid   string `json:"unionid"          description:"unionid"`
	Login     string `json:"login"          description:""`
	Types     string `json:"types"          description:"三方应用类型"`
	Id        string `json:"id"          description:""`
	UserId    string `json:"userId"          description:"用户表id"`
}

// AddSysOauthUserReq 添加数据
type AddSysOauthUserReq struct {
	g.Meta    `path:"/sys_oauth_user/add" method:"post" summary:"添加单点登录" tags:"单点登录"`
	Name      string `json:"name"          description:"用户名称"`
	Openid    string `json:"openid"          description:"应用id"`
	CreatedAt string `json:"createdAt"          description:""`
	UpdatedAt string `json:"updatedAt"          description:""`
	UserId    string `json:"userId"          description:"用户表id"`
	AvatarUrl string `json:"avatarUrl"          description:"用户头像"`
	Unionid   string `json:"unionid"          description:"unionid"`
	Login     string `json:"login"          description:""`
	Types     string `json:"types"          description:"三方应用类型"`
}
type AddSysOauthUserRes struct{}

// EditSysOauthUserReq 编辑数据api
type EditSysOauthUserReq struct {
	g.Meta    `path:"/sys_oauth_user/edit" method:"put" summary:"编辑单点登录" tags:"单点登录"`
	Login     string `json:"login"          description:""`
	Types     string `json:"types"          description:"三方应用类型"`
	Id        string `json:"id"          description:""`
	UserId    string `json:"userId"          description:"用户表id"`
	AvatarUrl string `json:"avatarUrl"          description:"用户头像"`
	Unionid   string `json:"unionid"          description:"unionid"`
	Name      string `json:"name"          description:"用户名称"`
	Openid    string `json:"openid"          description:"应用id"`
	CreatedAt string `json:"createdAt"          description:""`
	UpdatedAt string `json:"updatedAt"          description:""`
}
type EditSysOauthUserRes struct{}

// DeleteSysOauthUserReq 删除数据
type DeleteSysOauthUserReq struct {
	g.Meta `path:"/sys_oauth_user/delete" method:"delete" summary:"删除单点登录" tags:"单点登录"`
	Ids    []int `json:"ids"        description:"ids" v:"required#ids不能为空"`
}
type DeleteSysOauthUserRes struct{}
